﻿using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using CSharpDevTools.Core;
using Microsoft.Win32;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Reflection.Emit;
using System.Text;
using System.Threading.Tasks;

namespace CSharpDevTools.ViewModels
{
    internal class EncodeBaseViewModel : ObservableObject
    {
        private string originalData;

        /// <summary>
        /// 原始数据
        /// </summary>
        public string OriginalData
        {
            get => this.originalData;
            set => this.SetProperty(ref this.originalData, value);
        }

        private string encodedData;

        /// <summary>
        /// 编码后数据
        /// </summary>
        public string EncodedData
        {
            get => this.encodedData;
            set => this.SetProperty(ref this.encodedData, value);
        }

        public RelayCommand EncodeCmd => new RelayCommand(Encode);

        public RelayCommand DecodeCmd => new(Decode);

        protected virtual void Encode()
        {
        }

        protected virtual void Decode()
        {
        }
    }
}
